home *** CD-ROM | disk | FTP | other *** search
Text File | 1997-02-04 | 6.6 KB | 272 lines | [TEXT/POV3] |
- // Persistence of Vision Ray Tracer Scene Description File
- // File: QTVRObject.pov
- // Vers: 3
- // Desc: Example of how to make a QTVR Object movie, NOT YET WORKING!!!
- // Animation Settings in Prefs dialog:
- // Frame: -,1,200,200
- // Clock: 1,-,-,1
- // NOTE:
- // This code currently assumes 200 total frames,
- // as we circle the object in 20 Long_Steps (longitude lines, 360 deg.),
- // and we take 10 Lat_Steps from top pole to bottom pole (lat. lines, 180 deg.)
- // How to convert:
- // (0) Render all frames with POV-Ray
- // (1) convert PICTs to QuickTime movie using MooVer or equiv.
- // (2) Convert to QT Object movie using Apple's "Make QTVR Object" utility
- // Date: 2/97
- // Auth: Kent Oberheu, modified by Eduard Schwan.
-
- // ----------------------------------------------
- // Set this line to 1 to do Kent's nice (slow) area lighting of the subject
- #declare DO_COMPLEX_LIGHTING = 0
-
- // ----------------------------------------------
- // The product of Lat_Steps x Long_Steps must be equal to the Final Frame value
- // *** YOU CAN CHANGE THESE NEXT TWO VALUES,
- // *** BUT FINAL_FRAME MUST MATCH WHAT YOU SET
- // *** IN THE PREFERENCES DIALOG (ANIMATION SETTINGS)
- #declare Lat_Steps = 10 // # of vertical steps
- #declare Long_Steps = 20 // # of longitudinal steps
- #declare Final_Frame = Lat_Steps*Long_Steps // # of frames in movie
- #declare Long_Max = 360 // total of 360 degrees around object
- #declare Lat_Max = 180 // total of 180 degrees from top pole to bottom pole
-
- // Long_Pos does a multiple repeating (sawtooth) increment from 0.0 to 360 (degrees)
- // around the object
- #declare Long_Pos = Long_Max*( clock*Long_Steps - (int(clock*Long_Steps)) )
-
- // Lat_Pos does an integral step function down the object, changing once every
- // time Long_Pos does a full 360 degree rotation.
- #declare Lat_Pos = Lat_Max*( int(clock*Lat_Steps)/Lat_Steps )
-
-
- // ----------------------------------------------
- #version 3.0
-
- global_settings
- {
- assumed_gamma 2.2
- }
-
-
- // ----------------------------------------------
- camera
- {
- perspective
- location <0,0,-14>
- up <0,1,0>
- right <1,0,0>
- look_at <0,0,0>
- angle 50
- }
-
- // ----------------------------------------------
- #if (DO_COMPLEX_LIGHTING)
- // The Area Light
- light_source
- {
- <5,10,-7.5>*1
- color <1,1,1>*.65
- spotlight
- point_at <0,0,0>
- radius 40
- falloff 100
- tightness 1
- area_light <-2,0,0>, <0,0,2>, 1, 1
- adaptive 10
- jitter
- rotate <0,0,0>
- //shadowless
- }
- #end
-
- #declare LIGHT_INTENSITY = 0.5
- light_source { <-7,13,-25>*4 color rgb <1, 0, 0>*LIGHT_INTENSITY shadowless } // R
- light_source { <-10,10,-20>*4 color rgb <0, 1, 0>*LIGHT_INTENSITY shadowless } // G
- light_source { <-13,7,-17>*4 color rgb <0, 0, 1>*LIGHT_INTENSITY shadowless } // B
- light_source { <2.5,-10,-2.5>*4 color rgb <.4,.7,1>*LIGHT_INTENSITY shadowless } // Blue Back light
-
- // ----------------------------------------------
- background { color rgb <.4,.1,.1> }
-
- #declare SphereTex = texture
- {
- pigment { color rgbft <1,.6,.5,0,0> }
- finish
- {
- diffuse .3
- ambient <.1,.13,.17>
- phong 0
- }
- }
-
- sphere
- {
- <0,0,0>, 20 // outside the camera
- texture { SphereTex }
- hollow
- no_shadow
- }
-
-
- // ----------------------------------------------
- #declare NewTex = texture
- {
- pigment { color rgbft <1,1,1,0,0> }
- finish
- {
- diffuse .9
- ambient <.1,.1,.1>
- phong 0
- specular 0
- roughness 1
- reflection 0
- refraction 0
- ior 1
- }
- }
-
-
-
- // ----------------------------------------------
- /*
- *************************************************
-
- The following are code clippets for some way cool julia sets.
- Note the declared values "One", "Two", "Three", and "Four"
- are for the quaternion equation in their respective order. -ko 7.24.96
-
-
- #declare ReGen = 7
-
- #declare Cycle1 = ReGen/5
- #declare Cycle2 = ReGen/11
- #declare Cycle3 = ReGen/20
- #declare Cycle4 = ReGen/15
-
-
- // this one is kind of like a mummy slug w/out the slug -ko 7.24.96
- #declare One = .1 // .187294 original cool value
- #declare Two = 1 // .244339 original cool value
- #declare Three = .765043 // .765043 original cool value
- #declare Four = .0765811 // .0765811 original cool value
- // max_iteration 9
-
- // The mummy slug w/ the shroud still intact -ko 7.24.96
- #declare One = .05
- #declare Two = .5
- #declare Three = .765043
- #declare Four = .0765811
- // max_iteration 9
-
-
- // Ginger Root -ko 7.24.96
- #declare One = .075
- #declare Two = .75
- #declare Three = -.765043
- #declare Four = -.0765811
- // max_iteration 9
-
-
- // Nice elongated paint strokes
- #declare One = .11
- #declare Two = 1.1
- #declare Three = .65
- #declare Four = .065
- // max_iteration 7
-
-
- // Very nice shroud shaped thingy - ko 7.24.96
- #declare One = .125
- #declare Two = 1.25
- #declare Three = .35
- #declare Four = .035
- // max_iteration 7
-
-
- // Way Cool Slug Thing!!!!! -ko 7.24.96
- #declare One = .05 // stretches out the neck
- #declare Two = .5 // keep at 1/10th of the value for "One"
- #declare Three = 1 // Defines the curve of the bottom of the slugs butt
- // including the definition of the antennae
- #declare Four = .1 // keep at 1/10th of the value for "Three"
- // max_iteration 9
-
-
- // Lightening preserved in Sand -ko 7.24.96
-
- #declare One = .25
- #declare Two = .5
- #declare Three = 1
- #declare Four = .5
- // max_iteration 9
-
-
- // Snake from the vortex! -ko 7.24.96
- #declare One = .25
- #declare Two = .375
- #declare Three = .75
- #declare Four = .5
- // max_iteration 9
-
-
- // Handle on a Pot? Maybe a liquid pouring -ko 7.24.96
- #declare One = .25
- #declare Two = .125
- #declare Three = 1
- #declare Four = .5
- // max_iteration 9
-
-
- *************************************************
- */
-
-
- // ----------------------------------------------
-
- #declare One = .25
- #declare Two = .375
- #declare Three = .75
- #declare Four = .5
-
- // original
- // #declare One = .11
- // #declare Two = .6
- // #declare Three = 1
- // #declare Four = .1
-
- #declare BlobbyFract =
- julia_fractal
- {
- //<.5,-.2,.8,.6>
- <One,Two,Three,Four>
- quaternion
- cube
- max_iteration 9
- precision 5000
- //slice <0,0,0,1>,0
- texture { NewTex }
- scale 4.25
- //clipped_by {box{ <-10,-.125,-10> <10,.125,10> rotate <0,0,60> translate <0,0,0>}}
- //bounded_by { clipped_by }
- rotate <290,0,0>
- rotate <0,560,0>
- rotate <0,0,840>
- translate <0,-1.075,0>
- scale 1.05
- hollow
- }
-
- // ----------------------------------------------
- // The actual object interest goes here
- object
- {
- BlobbyFract
- translate <0,0,0>
- rotate <0,Long_Pos,0> // spin on Y axis
- rotate <-90,0,0> // now spin top toward viewer
- rotate <Lat_Pos,0,0> // spin on X axis
- }
-
-
-